/*
 * Cuerpo.cpp
 *
 *  Created on: 04/10/2013
 *      Author: ezequiel
 */

#include "Cuerpo.h"

Cuerpo::Cuerpo() {
this->formaCuerpo	= new Esfera(3.0);
this->f1 = new FormaHoyos();
this->f2 = new FormaHoyos();
}

Cuerpo::~Cuerpo() {
	this->f1->~FormaHoyos();
	this->f2->~FormaHoyos();
}

void Cuerpo::render(GLuint handle, glm::mat4* matModelo) {
//	glm::mat4 matrizCuerpo = *matModelo;

	glm::mat4 modelo1 = *matModelo;
	glm::mat4 modelo2 = *matModelo;
	modelo1 = glm::rotate(modelo1, 90.0f,glm::vec3(1.0f,0,0));
    modelo1 = glm::scale(modelo1, glm::vec3(0.25,0.25,1.0));
    f1->render(handle,&modelo1);
	modelo2 = glm::rotate(modelo2, -90.0f,glm::vec3(1.0f,0,0));
    modelo2 = glm::scale(modelo2, glm::vec3(0.25,-0.25,1.0));
    f2->render(handle,&modelo2);
//	matrizCuerpo = glm::scale(matrizCuerpo, glm::vec3 (1.0f, 0.25f, 0.75f));
//	this->formaCuerpo->render(handle, &matrizCuerpo);

}

void Cuerpo::render(GLuint handle) {

}

void Cuerpo::setTextureid(GLuint textureid, GLuint tNormal, GLuint aRef) {
//	this->formaCuerpo->setTextureid(textureid);
this->f1->setTextureid(textureid);
this->f2->setTextureid(textureid);
this->f1->setTextureNormalId(tNormal);
this->f2->setTextureNormalId(tNormal);
this->f1->setTextureReflexionId(aRef);
this->f2->setTextureReflexionId(aRef);
}

void Cuerpo::setCam(Camara* cam, glm::mat4 pr) {
	this->f1->setCam(cam, pr);
	this->f2->setCam(cam, pr);
}
